Extract Method Refactoring-Vorschläge automatisch ableiten

نویسندگان

  • Roman Haas
  • Benjamin Hummel
چکیده

Das Extract Method Refactoring ist eine gebräuchliche Art, zu lange Methoden im Code zu kürzen. Bevor aber Tool-Support für das Refactoring genutzt werden kann, müssen Entwickler zunächst geeignete Codezeilen identifizieren – ein zeitintensives und fehleranfälliges Unterfangen. Dieses Paper präsentiert einen Ansatz, der automatisch Vorschläge für Extract Method Refactorings generiert. Dazu werden zunächst alle gültigen Extract Method Refactorings berechnet und anschließend diejenigen vorgeschlagen, die die Komplexität des Codes am meisten verringern. Der Ansatz beruht auf einer Scoring-Funktion, deren Gewichtung durch Learning-to-Rank-Verfahren bestimmt wurde. Wir stellen in diesem Paper auch die wichtigsten Ergebnisse aus den Learning-to-Rank-Verfahren anhand von drei Forschungsfragen vor.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

KABA Ein System zur Refaktorisierung von Java-Programmen

Refactoring ist eine bekannte Technik, um verschiedene Aspekte eines objekt-orientierten Programms zu verbessern. Sie ist in den letzten Jahren sehr populär geworden, da sie es erlaubt, Defizite zu beseitigen, die sich in sehr vielen Programmen finden. Die Größe moderner Software-Systeme macht es unmöglich, Refactoring von Hand durchzuführen. Zwar existieren Werkzeuge, die es ermöglichen Refact...

متن کامل

Software verstehen, zerstören, schützen mit automatischen Software-Modellen

Modelle und Spezifikationen sind die Grundlage jeder vernünftigen SoftwareEntwicklung. Was aber, wenn man Modelle und Spezifikationen aus bestehenden Programmen ableiten könnte? Unsere aktuellen Arbeiten nehmen ein Programm und einige Beispieleingaben und leiten automatisch Grammatiken ab, die Eingabeund Ausgabeformat beschreiben. So kann unser AUTOGRAM-System etwa für die JavaURL-Klasse aus de...

متن کامل

An Investigation into the Characteristics of Methods for Extract Method Refactoring

“Extract Method” is a refactoring pattern that extracts a part of an existing method as a new method. Although extract method refactoring is an effective way to decompose long and non-cohesive methods in general, how developers choose methods for “Extract Method” refactoring is still unexamined. For supporting this refactoring, the investigation of it is neccessary. In this study, we investigat...

متن کامل

Issues in Performing and Automating the “Extract Method Calls” Refactoring

A large part of converting a pre-AOP application into an aspect-oriented one consists, next to aspect mining, out of aspect refactoring. One such aspect refactoring named “Extract Method Calls” refactoring [11, 17] transforms certain crosscutting concerns which are implemented by calls to a single method into an aspect by turning the called method into an advice and all the calls to that method...

متن کامل

Individualisierung von Prozessen und E-Services mithilfe von Case Based Reasoning

Mit steigender Wettbewerbsdynamik, kürzeren Strategieund Produktlebenszyklen sowie zunehmender Leistungsindividualisierung steigen die Anforderungen an die Flexibilisierung der Prozessund IT-Landschaft, um eine effiziente Implementierung neuer Geschäftsstrategien sicherzustellen. Gleichzeitig ermöglichen neue Technologien und Standards wie Web Services und Serviceorientierte Architekturen (SOA)...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Softwaretechnik-Trends

دوره 36  شماره 

صفحات  -

تاریخ انتشار 2016